package br.com.sanambiental.san.controlador;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import br.gov.caixa.pedesgo.arquitetura.mensagem.MensagensUtil;

@ManagedBean
@SessionScoped
public class ServicoMB {

    private static final String ARQUIVO_MENSAGEM = "msg";
    private static final String TELA_DETALHE = "/paginas/servico/detalhe.xhtml?faces-redirect=true";

    // servico simples
    private String nomeServico;
    private String descricaoServico;
    private String resumoServico;
    private String subDescricao;

    // licenciamento ambiental
    private String licencaPrevia;
    private String licencaPreviaDescricao;
    private String licencaInstalacao;
    private String licencaInstalacaoDescricao;
    private String licencaOperacao;
    private String licencaOperacaoDescricao;

    // impacto vizinhança
    private String adensamento;
    private String equipamento;
    private String ocupacao;
    private String valorizacao;
    private String geracao;
    private String demanda;
    private String paisagem;
    private String patrimonio;

    // outorga dagua
    private String derivacao;
    private String extracao;
    private String lancamento;
    private String recurso;
    private String outros;

    // gestão ambiental
    private String descricao2;
    private String descricao3;
    private String descricao4;
    private String constitui;
    private String possibilita;
    private String facilita;
    private String diminui;
    private String contribui;
    private String aumenta;

    private boolean exibirLicenciamentoAmbiental;
    private boolean exibirServicoSimples;
    private boolean exibirImpactoVizinhanca;
    private boolean exibirOutorgaAgua;
    private boolean exibirGestaoAmbiental;
    private boolean exibirMemorialCaracterizacao;
    private boolean exibirSubDescricao;

    /**
     * <p>
     * Método responsável por limpar os serviços da tela
     * <p>
     * 
     * @author Waltenes Junior
     */
    private void limparServico() {
	this.setExibirGestaoAmbiental(false);
	this.setExibirImpactoVizinhanca(false);
	this.setExibirLicenciamentoAmbiental(false);
	this.setExibirMemorialCaracterizacao(false);
	this.setExibirOutorgaAgua(false);
	this.setExibirSubDescricao(false);
	this.setExibirServicoSimples(false);
    }

    /**
     * <p>
     * Método responsável por abrir serviço de licenciamento ambiental
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abrirLicenciamentoAbiental() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_licenciamento_ambiental_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_licenciamento_ambiental_descricao"));

	this.setLicencaPrevia(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_licenciamento_ambiental_licenca_previa"));

	this.setLicencaPreviaDescricao(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_licenciamento_ambiental_licenca_previa_descricao"));

	this.setLicencaInstalacao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_licenciamento_ambiental_licenca_instalacao"));

	this.setLicencaInstalacaoDescricao(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_licenciamento_ambiental_licenca_instalacao_descricao"));

	this.setLicencaOperacao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_licenciamento_ambiental_licenca_peracao"));

	this.setLicencaOperacaoDescricao(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_licenciamento_ambiental_licenca_peracao_descricao"));

	this.limparServico();
	this.setExibirLicenciamentoAmbiental(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir serviço de plano de controle ambiental
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abrirPlanoControleAmbiental() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_plano_controle_ambiental_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_plano_controle_ambiental_descricao"));

	this.limparServico();
	this.setExibirServicoSimples(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir serviço de residuos solidos
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abriPlanoGerenciamentoResiduosSolidos() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_plano_gerenciamento_residuo_solido_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_plano_gerenciamento_residuo_solido_descricao"));

	this.setSubDescricao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_plano_gerenciamento_residuo_solido_descricao2"));

	this.limparServico();
	this.setExibirSubDescricao(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir servico PGRSS
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abriPlanoGerenciamentoResiduosServicoSaude() {

	this.setNomeServico(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_plano_gerenciamento_residuo_servico_saude_titulo"));

	this.setDescricaoServico(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_plano_gerenciamento_residuo_servico_saude_descricao"));

	this.limparServico();
	this.setExibirServicoSimples(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir serviço gerenciamento contrução civil
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abriPlanoGerenciamentoResiduosConstrucaoCivil() {

	this.setNomeServico(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_plano_gerenciamento_residuo_construcao_civil_titulo"));

	this.setDescricaoServico(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_plano_gerenciamento_residuo_construcao_civil_descricao"));

	this.setSubDescricao(MensagensUtil
		.getMensagem(ARQUIVO_MENSAGEM,
			"label_servico_plano_gerenciamento_residuo_construcao_civil_descricao2"));

	this.limparServico();
	this.setExibirSubDescricao(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir serviço impacto vixinhança
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abriEstudoImpactoVizinhanca() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_descricao"));

	this.setSubDescricao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_descricao2"));

	this.setAdensamento(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_adensamento"));

	this.setEquipamento(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_equipamentos"));

	this.setOcupacao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_oculpacao"));

	this.setValorizacao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_valorizacao"));

	this.setGeracao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_geracao"));

	this.setDemanda(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_demanda"));

	this.setPaisagem(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_paisagem"));

	this.setPatrimonio(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_estudo_impacto_vizinhanca_patrimonio"));

	this.limparServico();
	this.setExibirImpactoVizinhanca(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir servico outorga dagua
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abrirOutorgaDagua() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_descricao"));

	this.setDerivacao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_derivacao"));

	this.setExtracao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_extracao"));

	this.setLancamento(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_lancamento"));

	this.setRecurso(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_recurso"));

	this.setOutros(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_outorga_agua_outros"));

	this.limparServico();
	this.setExibirOutorgaAgua(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir servico cadastramento ambiental rural
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abrirCadastramentoAmbientalRural() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_cadastro_ambiental_rural_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_cadastro_ambiental_rural_descricao"));

	this.setSubDescricao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_cadastro_ambiental_rural_sub_descricao"));

	this.limparServico();
	this.setExibirSubDescricao(true);

	return TELA_DETALHE;
    }

    /**
     * <p>
     * Método responsável por abrir servico gestão ambiental
     * <p>
     * 
     * @return String
     * @author Waltenes Junior
     */
    public String abrirSistemaGestaoAmbiental() {

	this.setNomeServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_titulo"));

	this.setDescricaoServico(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_descricao"));

	this.setSubDescricao(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_descricao2"));

	this.setDescricao2(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_descricao3"));

	this.setDescricao3(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_descricao4"));

	this.setDescricao4(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_normas"));

	this.setConstitui(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_constitui"));

	this.setPossibilita(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_possibilita"));

	this.setFacilita(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_facilita"));

	this.setDiminui(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_diminui"));

	this.setContribui(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_contribui"));

	this.setAumenta(MensagensUtil.getMensagem(ARQUIVO_MENSAGEM,
		"label_servico_gestao_ambiental_aumenta"));

	this.limparServico();
	this.setExibirGestaoAmbiental(true);

	return TELA_DETALHE;
    }

    /**
     * Retorna o valor do atributo nomeServico.
     * 
     * @return nomeServico
     */
    public String getNomeServico() {
	return nomeServico;
    }

    /**
     * Define o valor do atributo nomeServico.
     * 
     * @param nomeServico
     *            valor a ser atribuído
     */
    public void setNomeServico(String nomeServico) {
	this.nomeServico = nomeServico;
    }

    /**
     * Retorna o valor do atributo descricaoServico.
     * 
     * @return descricaoServico
     */
    public String getDescricaoServico() {
	return descricaoServico;
    }

    /**
     * Define o valor do atributo descricaoServico.
     * 
     * @param descricaoServico
     *            valor a ser atribuído
     */
    public void setDescricaoServico(String descricaoServico) {
	this.descricaoServico = descricaoServico;
    }

    /**
     * Retorna o valor do atributo resumoServico.
     * 
     * @return resumoServico
     */
    public String getResumoServico() {
	return resumoServico;
    }

    /**
     * Define o valor do atributo resumoServico.
     * 
     * @param resumoServico
     *            valor a ser atribuído
     */
    public void setResumoServico(String resumoServico) {
	this.resumoServico = resumoServico;
    }

    /**
     * Retorna o valor do atributo exibirLicenciamentoAmbiental.
     * 
     * @return exibirLicenciamentoAmbiental
     */
    public boolean isExibirLicenciamentoAmbiental() {
	return exibirLicenciamentoAmbiental;
    }

    /**
     * Define o valor do atributo exibirLicenciamentoAmbiental.
     * 
     * @param exibirLicenciamentoAmbiental
     *            valor a ser atribuído
     */
    public void setExibirLicenciamentoAmbiental(
	    boolean exibirLicenciamentoAmbiental) {
	this.exibirLicenciamentoAmbiental = exibirLicenciamentoAmbiental;
    }

    /**
     * Retorna o valor do atributo exibirServicoSimples.
     * 
     * @return exibirServicoSimples
     */
    public boolean isExibirServicoSimples() {
	return exibirServicoSimples;
    }

    /**
     * Define o valor do atributo exibirServicoSimples.
     * 
     * @param exibirServicoSimples
     *            valor a ser atribuído
     */
    public void setExibirServicoSimples(boolean exibirServicoSimples) {
	this.exibirServicoSimples = exibirServicoSimples;
    }

    /**
     * Retorna o valor do atributo exibirImpactoVizinhanca.
     * 
     * @return exibirImpactoVizinhanca
     */
    public boolean isExibirImpactoVizinhanca() {
	return exibirImpactoVizinhanca;
    }

    /**
     * Define o valor do atributo exibirImpactoVizinhanca.
     * 
     * @param exibirImpactoVizinhanca
     *            valor a ser atribuído
     */
    public void setExibirImpactoVizinhanca(boolean exibirImpactoVizinhanca) {
	this.exibirImpactoVizinhanca = exibirImpactoVizinhanca;
    }

    /**
     * Retorna o valor do atributo exibirOutorgaAgua.
     * 
     * @return exibirOutorgaAgua
     */
    public boolean isExibirOutorgaAgua() {
	return exibirOutorgaAgua;
    }

    /**
     * Define o valor do atributo exibirOutorgaAgua.
     * 
     * @param exibirOutorgaAgua
     *            valor a ser atribuído
     */
    public void setExibirOutorgaAgua(boolean exibirOutorgaAgua) {
	this.exibirOutorgaAgua = exibirOutorgaAgua;
    }

    /**
     * Retorna o valor do atributo exibirGestaoAmbiental.
     * 
     * @return exibirGestaoAmbiental
     */
    public boolean isExibirGestaoAmbiental() {
	return exibirGestaoAmbiental;
    }

    /**
     * Define o valor do atributo exibirGestaoAmbiental.
     * 
     * @param exibirGestaoAmbiental
     *            valor a ser atribuído
     */
    public void setExibirGestaoAmbiental(boolean exibirGestaoAmbiental) {
	this.exibirGestaoAmbiental = exibirGestaoAmbiental;
    }

    /**
     * Retorna o valor do atributo exibirMemorialCaracterizacao.
     * 
     * @return exibirMemorialCaracterizacao
     */
    public boolean isExibirMemorialCaracterizacao() {
	return exibirMemorialCaracterizacao;
    }

    /**
     * Define o valor do atributo exibirMemorialCaracterizacao.
     * 
     * @param exibirMemorialCaracterizacao
     *            valor a ser atribuído
     */
    public void setExibirMemorialCaracterizacao(
	    boolean exibirMemorialCaracterizacao) {
	this.exibirMemorialCaracterizacao = exibirMemorialCaracterizacao;
    }

    /**
     * Retorna o valor do atributo licencaPrevia.
     * 
     * @return licencaPrevia
     */
    public String getLicencaPrevia() {
	return licencaPrevia;
    }

    /**
     * Define o valor do atributo licencaPrevia.
     * 
     * @param licencaPrevia
     *            valor a ser atribuído
     */
    public void setLicencaPrevia(String licencaPrevia) {
	this.licencaPrevia = licencaPrevia;
    }

    /**
     * Retorna o valor do atributo licencaPreviaDescricao.
     * 
     * @return licencaPreviaDescricao
     */
    public String getLicencaPreviaDescricao() {
	return licencaPreviaDescricao;
    }

    /**
     * Define o valor do atributo licencaPreviaDescricao.
     * 
     * @param licencaPreviaDescricao
     *            valor a ser atribuído
     */
    public void setLicencaPreviaDescricao(String licencaPreviaDescricao) {
	this.licencaPreviaDescricao = licencaPreviaDescricao;
    }

    /**
     * Retorna o valor do atributo licencaInstalacao.
     * 
     * @return licencaInstalacao
     */
    public String getLicencaInstalacao() {
	return licencaInstalacao;
    }

    /**
     * Define o valor do atributo licencaInstalacao.
     * 
     * @param licencaInstalacao
     *            valor a ser atribuído
     */
    public void setLicencaInstalacao(String licencaInstalacao) {
	this.licencaInstalacao = licencaInstalacao;
    }

    /**
     * Retorna o valor do atributo licencaInstalacaoDescricao.
     * 
     * @return licencaInstalacaoDescricao
     */
    public String getLicencaInstalacaoDescricao() {
	return licencaInstalacaoDescricao;
    }

    /**
     * Define o valor do atributo licencaInstalacaoDescricao.
     * 
     * @param licencaInstalacaoDescricao
     *            valor a ser atribuído
     */
    public void setLicencaInstalacaoDescricao(String licencaInstalacaoDescricao) {
	this.licencaInstalacaoDescricao = licencaInstalacaoDescricao;
    }

    /**
     * Retorna o valor do atributo licencaOperacao.
     * 
     * @return licencaOperacao
     */
    public String getLicencaOperacao() {
	return licencaOperacao;
    }

    /**
     * Define o valor do atributo licencaOperacao.
     * 
     * @param licencaOperacao
     *            valor a ser atribuído
     */
    public void setLicencaOperacao(String licencaOperacao) {
	this.licencaOperacao = licencaOperacao;
    }

    /**
     * Retorna o valor do atributo licencaOperacaoDescricao.
     * 
     * @return licencaOperacaoDescricao
     */
    public String getLicencaOperacaoDescricao() {
	return licencaOperacaoDescricao;
    }

    /**
     * Define o valor do atributo licencaOperacaoDescricao.
     * 
     * @param licencaOperacaoDescricao
     *            valor a ser atribuído
     */
    public void setLicencaOperacaoDescricao(String licencaOperacaoDescricao) {
	this.licencaOperacaoDescricao = licencaOperacaoDescricao;
    }

    /**
     * Retorna o valor do atributo subDescricao.
     * 
     * @return subDescricao
     */
    public String getSubDescricao() {
	return subDescricao;
    }

    /**
     * Define o valor do atributo subDescricao.
     * 
     * @param subDescricao
     *            valor a ser atribuído
     */
    public void setSubDescricao(String subDescricao) {
	this.subDescricao = subDescricao;
    }

    /**
     * Retorna o valor do atributo exibirSubDescricao.
     * 
     * @return exibirSubDescricao
     */
    public boolean isExibirSubDescricao() {
	return exibirSubDescricao;
    }

    /**
     * Define o valor do atributo exibirSubDescricao.
     * 
     * @param exibirSubDescricao
     *            valor a ser atribuído
     */
    public void setExibirSubDescricao(boolean exibirSubDescricao) {
	this.exibirSubDescricao = exibirSubDescricao;
    }

    /**
     * Retorna o valor do atributo adensamento.
     * 
     * @return adensamento
     */
    public String getAdensamento() {
	return adensamento;
    }

    /**
     * Define o valor do atributo adensamento.
     * 
     * @param adensamento
     *            valor a ser atribuído
     */
    public void setAdensamento(String adensamento) {
	this.adensamento = adensamento;
    }

    /**
     * Retorna o valor do atributo equipamento.
     * 
     * @return equipamento
     */
    public String getEquipamento() {
	return equipamento;
    }

    /**
     * Define o valor do atributo equipamento.
     * 
     * @param equipamento
     *            valor a ser atribuído
     */
    public void setEquipamento(String equipamento) {
	this.equipamento = equipamento;
    }

    /**
     * Retorna o valor do atributo ocupacao.
     * 
     * @return ocupacao
     */
    public String getOcupacao() {
	return ocupacao;
    }

    /**
     * Define o valor do atributo ocupacao.
     * 
     * @param ocupacao
     *            valor a ser atribuído
     */
    public void setOcupacao(String ocupacao) {
	this.ocupacao = ocupacao;
    }

    /**
     * Retorna o valor do atributo valorizacao.
     * 
     * @return valorizacao
     */
    public String getValorizacao() {
	return valorizacao;
    }

    /**
     * Define o valor do atributo valorizacao.
     * 
     * @param valorizacao
     *            valor a ser atribuído
     */
    public void setValorizacao(String valorizacao) {
	this.valorizacao = valorizacao;
    }

    /**
     * Retorna o valor do atributo geracao.
     * 
     * @return geracao
     */
    public String getGeracao() {
	return geracao;
    }

    /**
     * Define o valor do atributo geracao.
     * 
     * @param geracao
     *            valor a ser atribuído
     */
    public void setGeracao(String geracao) {
	this.geracao = geracao;
    }

    /**
     * Retorna o valor do atributo demanda.
     * 
     * @return demanda
     */
    public String getDemanda() {
	return demanda;
    }

    /**
     * Define o valor do atributo demanda.
     * 
     * @param demanda
     *            valor a ser atribuído
     */
    public void setDemanda(String demanda) {
	this.demanda = demanda;
    }

    /**
     * Retorna o valor do atributo paisagem.
     * 
     * @return paisagem
     */
    public String getPaisagem() {
	return paisagem;
    }

    /**
     * Define o valor do atributo paisagem.
     * 
     * @param paisagem
     *            valor a ser atribuído
     */
    public void setPaisagem(String paisagem) {
	this.paisagem = paisagem;
    }

    /**
     * Retorna o valor do atributo patrimonio.
     * 
     * @return patrimonio
     */
    public String getPatrimonio() {
	return patrimonio;
    }

    /**
     * Define o valor do atributo patrimonio.
     * 
     * @param patrimonio
     *            valor a ser atribuído
     */
    public void setPatrimonio(String patrimonio) {
	this.patrimonio = patrimonio;
    }

    /**
     * Retorna o valor do atributo derivacao.
     * 
     * @return derivacao
     */
    public String getDerivacao() {
	return derivacao;
    }

    /**
     * Define o valor do atributo derivacao.
     * 
     * @param derivacao
     *            valor a ser atribuído
     */
    public void setDerivacao(String derivacao) {
	this.derivacao = derivacao;
    }

    /**
     * Retorna o valor do atributo extracao.
     * 
     * @return extracao
     */
    public String getExtracao() {
	return extracao;
    }

    /**
     * Define o valor do atributo extracao.
     * 
     * @param extracao
     *            valor a ser atribuído
     */
    public void setExtracao(String extracao) {
	this.extracao = extracao;
    }

    /**
     * Retorna o valor do atributo lancamento.
     * 
     * @return lancamento
     */
    public String getLancamento() {
	return lancamento;
    }

    /**
     * Define o valor do atributo lancamento.
     * 
     * @param lancamento
     *            valor a ser atribuído
     */
    public void setLancamento(String lancamento) {
	this.lancamento = lancamento;
    }

    /**
     * Retorna o valor do atributo recurso.
     * 
     * @return recurso
     */
    public String getRecurso() {
	return recurso;
    }

    /**
     * Define o valor do atributo recurso.
     * 
     * @param recurso
     *            valor a ser atribuído
     */
    public void setRecurso(String recurso) {
	this.recurso = recurso;
    }

    /**
     * Retorna o valor do atributo outros.
     * 
     * @return outros
     */
    public String getOutros() {
	return outros;
    }

    /**
     * Define o valor do atributo outros.
     * 
     * @param outros
     *            valor a ser atribuído
     */
    public void setOutros(String outros) {
	this.outros = outros;
    }

    /**
     * Retorna o valor do atributo descricao2.
     * 
     * @return descricao2
     */
    public String getDescricao2() {

	return descricao2;
    }

    /**
     * Define o valor do atributo descricao2.
     * 
     * @param descricao2
     *            valor a ser atribuído
     */
    public void setDescricao2(String descricao2) {

	this.descricao2 = descricao2;
    }

    /**
     * Retorna o valor do atributo descricao3.
     * 
     * @return descricao3
     */
    public String getDescricao3() {

	return descricao3;
    }

    /**
     * Define o valor do atributo descricao3.
     * 
     * @param descricao3
     *            valor a ser atribuído
     */
    public void setDescricao3(String descricao3) {

	this.descricao3 = descricao3;
    }

    /**
     * Retorna o valor do atributo descricao4.
     * 
     * @return descricao4
     */
    public String getDescricao4() {

	return descricao4;
    }

    /**
     * Define o valor do atributo descricao4.
     * 
     * @param descricao4
     *            valor a ser atribuído
     */
    public void setDescricao4(String descricao4) {

	this.descricao4 = descricao4;
    }

    /**
     * Retorna o valor do atributo constitui.
     * 
     * @return constitui
     */
    public String getConstitui() {

	return constitui;
    }

    /**
     * Define o valor do atributo constitui.
     * 
     * @param constitui
     *            valor a ser atribuído
     */
    public void setConstitui(String constitui) {

	this.constitui = constitui;
    }

    /**
     * Retorna o valor do atributo possibilita.
     * 
     * @return possibilita
     */
    public String getPossibilita() {

	return possibilita;
    }

    /**
     * Define o valor do atributo possibilita.
     * 
     * @param possibilita
     *            valor a ser atribuído
     */
    public void setPossibilita(String possibilita) {

	this.possibilita = possibilita;
    }

    /**
     * Retorna o valor do atributo facilita.
     * 
     * @return facilita
     */
    public String getFacilita() {

	return facilita;
    }

    /**
     * Define o valor do atributo facilita.
     * 
     * @param facilita
     *            valor a ser atribuído
     */
    public void setFacilita(String facilita) {

	this.facilita = facilita;
    }

    /**
     * Retorna o valor do atributo contribui.
     * 
     * @return contribui
     */
    public String getContribui() {

	return contribui;
    }

    /**
     * Define o valor do atributo contribui.
     * 
     * @param contribui
     *            valor a ser atribuído
     */
    public void setContribui(String contribui) {

	this.contribui = contribui;
    }

    /**
     * Retorna o valor do atributo aumenta.
     * 
     * @return aumenta
     */
    public String getAumenta() {

	return aumenta;
    }

    /**
     * Define o valor do atributo aumenta.
     * 
     * @param aumenta
     *            valor a ser atribuído
     */
    public void setAumenta(String aumenta) {

	this.aumenta = aumenta;
    }

    /**
     * Retorna o valor do atributo diminui.
     * 
     * @return diminui
     */
    public String getDiminui() {

	return diminui;
    }

    /**
     * Define o valor do atributo diminui.
     * 
     * @param diminui
     *            valor a ser atribuído
     */
    public void setDiminui(String diminui) {

	this.diminui = diminui;
    }
}
